package com.zzyl.serve.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.zzyl.common.annotation.Excel;
import com.zzyl.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 护理任务对象 nursing_task
 * 
 * @author ruoyi
 * @date 2025-10-29
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@ApiModel("护理任务实体")
public class NursingTaskVo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /**
    * 主键ID
    */
    @ApiModelProperty(value = "主键ID")
    private Long id;

    /**
    * 床位编号
    */
    @Excel(name = "床位编号")
    @ApiModelProperty(value = "床位编号")
    private String bedNumber;

    /**
    * 取消原因
    */
    @Excel(name = "取消原因")
    @ApiModelProperty(value = "取消原因")
    private String cancelReason;

    /**
    * 老人id
    */
    @Excel(name = "老人id")
    @ApiModelProperty(value = "老人id")
    private Long elderId;

    /**
    * 老人姓名
    */
    @Excel(name = "老人姓名")
    @ApiModelProperty(value = "老人姓名")
    private String elderName;

    /**
    * 预计服务时间
    */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "预计服务时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "预计服务时间")
    private LocalDateTime estimatedServerTime;

    /**
    * 执行记录
    */
    @Excel(name = "执行记录")
    @ApiModelProperty(value = "执行记录")
    private String mark;

    /**
    * 护理员id（多个用逗号分隔，如：103,104）
    */
    @Excel(name = "护理员id", readConverterExp = "多=个用逗号分隔，如：103,104")
    @ApiModelProperty(value = "护理员id")
    private String nursingId;

    /**
    * 项目id
    */
    @Excel(name = "项目id")
    @ApiModelProperty(value = "项目id")
    private Long projectId;

    /**
    * 护理项目名称
    */
    @Excel(name = "护理项目名称")
    @ApiModelProperty(value = "护理项目名称")
    private String projectName;

    /**
    * 实际服务时间
    */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "实际服务时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "实际服务时间")
    private LocalDateTime realServerTime;

    /**
    * 状态：1待执行 2已执行 3已关闭
    */
    @Excel(name = "状态：1待执行 2已执行 3已关闭")
    @ApiModelProperty(value = "状态：1待执行 2已执行 3已关闭")
    private Integer status;

    /**
    * 执行图片（URL）
    */
    @Excel(name = "执行图片", readConverterExp = "U=RL")
    @ApiModelProperty(value = "执行图片")
    private String taskImage;
    /**
     * 护理员姓名
     */
    @Excel(name = "护理员姓名")
    private List<String> nursingName;

    /**
     * 护理等级
     */
    @Excel(name = "护理等级")
    private String nursingLevelName;

    /**
     * 老人年龄
     */
    @Excel(name = "老人年龄")
    private Integer age;

    /**
     * 更新人姓名
     */
    @Excel(name = "更新人姓名")
    private String updater;
}